1. Field of the Invention
The present invention relates to an electronic musical instrument with a delay trigger function.
2. Description of the Related Art
There are known delay effect producing apparatuses which delay a direct sound to produce a delay effect. When notes C2, D2, E2 and F2 are triggered in the order as shown in FIG. 1, for example, such apparatuses produce the associated musical sounds of notes C2, D2, E2 and F2 and produce them again after a given delay time. This type of delay effect was realized at first by an analog delay device, such as a BBD (bucket brigade device), and was realized later by such hardware as a signal processor as a exclusive use for digital delay.
Recently, in order to improve the cost performance, there appeared a system that produces a delay effect under the program control of a CPU in place of the above exclusive hardware. Synthesizer "V2" (YAMAHA product) is an example of such system, and its structure is illustrated in FIGS. 2 and 3. In this example, a sound source has a 16-polyphonic function (16 sound channels), eight channels for real time sounding and the remaining eight channels for delayed sounding. FIG. 2 illustrates key code assign registers used by a key assign section of the CPU for sound assignment, and at their address corresponding to each sound channel is written a key code which uses that sound channel. Key codes for real time sounding are stored in registers ch0 to ch7, and key codes for delayed sounding in registers ch8 to ch15. When key codes C2, D2, E2 and F2 are inputted in the named order, for example, the CPU sequentially stores key code C2 in register ch0, key code D2 in register ch1, key code E2 in register ch2 and key code F2 in register ch3 and generates their musical tones through the associated channels. Further, in generating the musical tones, the CPU sets initial delay times in those sections of a delay time counter TM which are associated with the tones. The set values in delay time counter TM are decremented every given period, and when each count value becomes zero, a key code (e.g., C2) is latched from the associated sound channel register (ch0 in this case) in the real time channel key code assign register RA and is transferred to the associated sound channel register (ch8 for ch0) in delay channel key code assign register DA. Then, this sound channel is driven to generate the associated musical tone.
As the above arrangement is realized by adding the delay function to the key assign function of the CPU, no exclusive hardware is necessary.
With the above arrangement, however, when the number of keys depressed within a delay time exceeds an allowable polyphonic number, it is not possible to generate delayed sounds for those exceeded keys. For instance, ten tones, C2, D2, E2, F2, G2, A2, B2, C3, D3 and E3, are generated in the named order, the last two key codes D3 and E3 will be latched in key code assign registers ch0 and ch1 according to the truncate logic and ch0 and ch1 of delay time counter TM are initialized again. This clears the previous data in registers ch0 and ch1, so that C2 and D2 would never be generated.